#include <Arduino.h>               // Arduino核心库
#include "network_handler.h"       // 网络连接模块（WiFi/AP/UDP）
#include "webserver_handler.h"     // Web服务器模块（网页配网）
#include "screen_display.h"        // 屏幕显示模块（上传图片并显示）
#include "device_info.h"           // 设备信息模块（上报设备状态）

// =====================================================
// 系统初始化
// =====================================================
void setup() {
  Serial.begin(115200);
  Serial.println();
  Serial.println("======================================");
  Serial.println("   ChiYu Display v1.0.0 启动中...");
  Serial.println("======================================");

  initNetwork();                   // ✅ 先启动网络逻辑（自动判断WiFi/AP模式）
  initScreenDisplay();              // ✅ 再初始化屏幕模块

  Serial.println("[SYS] 初始化完成，等待用户操作");
}

// =====================================================
// 主循环
// =====================================================
void loop() {
  handleNetworkLoop();              // 处理WiFi维护、UDP广播、按钮清除逻辑
  handleWebServerLoop();            // ✅ 确保网页服务持续响应
  handleScreenDisplay();            // 刷新显示、响应上传图片等

  delay(1);                         // 防止空跑导致WDT触发
}
